home *** CD-ROM | disk | FTP | other *** search
-
- strt:
-
- MODIT MACRO
- divs #800,\1
- swap \1
- ENDM
-
- moveq #0,d3
- move.w d1,d3
- move.l d3,d1
- divu #50,d1
- lsr.w #8,d3
- swap d1
- swap d2
- clr.w d2
- swap d2
- divu #17,d2
- swap d2
- addq #1,d1
- addq #1,d2
- divu #7,d3
- swap d3
- lea TABLE(pc),a0
- asl.w #4,d3
- add.w d3,a0
-
- move.w d1,d0 ;row
- muls d0,d0 ;row*row
- MODIT d0
- move.w d2,d4 ;col
- muls d4,d4 ;col*col
- MODIT d4
- move.w d0,d5 ;row*row
- muls d5,d5 ;row*row*row*row
- MODIT d5
- move.w d4,d6 ;col*col
- muls d6,d6 ;col*col*col*col
- MODIT d6
- muls d5,d6 ;row*row*row*row*col*col*col*col
- MODIT d6
- muls (a0),d6 ;*var a
- MODIT d6
-
- muls d1,d4
- MODIT d4
- muls d2,d4
- muls 2(a0),d4
- MODIT d4
- add.w d4,d6
-
- move.w d1,d0
- muls d2,d0
- MODIT d0
- muls 4(a0),d0
- MODIT d0
- add.w d0,d6
- muls 6(a0),d1
- MODIT d1
- muls 8(a0),d2
- MODIT d2
- add.w d1,d2
- add.w d2,d6
- add.w 10(a0),d6
- ext.l d6
- MODIT d6
- neg.w d6
- add.w #999,d6
- move.w d6,d0
- rts
-
- TABLE:
- dc.w 14,58,64,25,94,36,0,0
- dc.w 22,9,16,34,65,87,0,0
- dc.w 132,62,97,112,154,38,0,0
- dc.w 174,192,46,36,74,86,0,0
- dc.w 32,62,94,96,66,55,0,0
- dc.w 162,111,98,10,20,31,0,0
- dc.w 58,34,99,35,100,75,0,0
-
- edn:
-
-